//
//  GTMTesterViewController.h
//  LecturePad
//
//  Created by vo loc on 12/31/10.
//  Copyright 2010 Epsilon Mobile. All rights reserved.
//

#import <UIKit/UIKit.h>
#import "GTMDefines.h"
#import "GTMSenTestCase.h"

#define kTestCaseStatusUnknown -1
#define kTestCaseStatusPassed 1
#define kTestCaseStatusFailed 0

@interface TestCaseResult : NSObject
{
  NSString		* testName;
  NSDate			* startDate;
  NSTimeInterval			runningTime;
  
  GTMTestCase	* testCase;
  
  int					status; // -1 = unknown, 1=pass, 0=failed
}

@property (copy) NSString	* testName;
@property (copy) NSDate		* startDate;
@property (assign) NSTimeInterval		runningTime;

@property (nonatomic, retain) GTMTestCase	* testCase;
@property (readonly) int status;

- (void)runTest;
- (void)reset;
@end

@interface GTMTesterViewController : UIViewController <UITableViewDataSource, UITableViewDelegate>
{
	NSMutableArray	* _testSuiteName;
  NSMutableArray	* _testCases;
  
  IBOutlet UITableView* tableView;
}

- (void)analyzeTestSuites:(NSArray*)testSuites;

-	(IBAction)close:(id)sender;
- (IBAction)runAllTest:(id)sender;
- (IBAction)reset:(id)sender;

@end
